gadget: Show layout
authorMatthias Clasen <mclasen@redhat.com>
Fri, 11 Mar 2016 04:13:54 +0000 (23:13 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Fri, 11 Mar 2016 04:21:22 +0000 (23:21 -0500)
When the layout debug key is set, overlay boxes for the content
and border area of each gadget.

gtk/gtkcssgadget.c

index 48d1da1357891aba86a369065c625a32912cc76e..a739a15fa29cd6dd0e770484b8f38c96d6840929 100644 (file)
@@ -887,6 +887,28 @@ gtk_css_gadget_draw (GtkCssGadget *gadget,
                                   height - margin.top - margin.bottom);
 
 #if G_ENABLE_DEBUG
+  if (GTK_DEBUG_CHECK (LAYOUT))
+    {
+      cairo_save (cr);
+      cairo_new_path (cr);
+      cairo_rectangle (cr,
+                       x + margin.left,
+                       y + margin.top,
+                       width - margin.left - margin.right,
+                       height - margin.top - margin.bottom);
+      cairo_set_line_width (cr, 1.0);
+      cairo_set_source_rgba (cr, 0, 0, 1.0, 0.33);
+      cairo_stroke (cr);
+      cairo_rectangle (cr,
+                       contents_x,
+                       contents_y,
+                       contents_width,
+                       contents_height);
+      cairo_set_line_width (cr, 1.0);
+      cairo_set_source_rgba (cr, 1.0, 0, 1.0, 0.33);
+      cairo_stroke (cr);
+      cairo_restore (cr);
+    }
   if (GTK_DEBUG_CHECK (BASELINES))
     {
       int baseline = priv->allocated_baseline;